From d84016553c1f796a7125993890037d777689af1b Mon Sep 17 00:00:00 2001 From: Alex Williamson Date: Fri, 24 Aug 2007 15:06:49 -0600 Subject: [PATCH] [IA64] Kill PM timer The release proceeding of domain resources forgot to stop (or kill) PM timer, and freed the domain structure. VMX flag of VCPU#0 was not set when VHPT allocation for VCPU#0 failed. For this reason, domain_relinquish_resources() did not call vmx_relinqush_guest_resources(). But the domain structure was freed. As a result, timer_softirq_action() lose sight of the callback function for PM timer. Signed-off-by: Masaki Kanno --- xen/arch/ia64/xen/domain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/ia64/xen/domain.c b/xen/arch/ia64/xen/domain.c index 1cda521a4e..c8cd84a74b 100644 --- a/xen/arch/ia64/xen/domain.c +++ b/xen/arch/ia64/xen/domain.c @@ -939,7 +939,7 @@ static void relinquish_memory(struct domain *d, struct list_head *list) void domain_relinquish_resources(struct domain *d) { /* Relinquish guest resources for VT-i domain. */ - if (d->vcpu[0] && VMX_DOMAIN(d->vcpu[0])) + if (d->arch.is_vti) vmx_relinquish_guest_resources(d); /* Tear down shadow mode stuff. */ -- 2.30.2